305 research outputs found

    Beltway: Getting Around Garbage Collection Gridlock

    Get PDF
    We present the design and implementation of a new garbage collection framework that significantly generalizes existing copying collectors. The Beltway framework exploits and separates object age and incrementality. It groups objects in one or more increments on queues called belts, collects belts independently, and collects increments on a belt in first-in-first-out order. We show that Beltway configurations, selected by command line options, act and perform the same as semi-space, generational, and older-first collectors, and encompass all previous copying collectors of which we are aware. The increasing reliance on garbage collected languages such as Java requires that the collector perform well. We show that the generality of Beltway enables us to design and implement new collectors that are robust to variations in heap size and improve total execution time over the best generational copying collectors of which we are aware by up to 40%, and on average by 5 to 10%, for small to moderate heap sizes. New garbage collection algorithms are rare, and yet we define not just one, but a new family of collectors that subsumes previous work. This generality enables us to explore a larger design space and build better collectors

    Model Complexity of Program Phases

    Full text link
    In resource limited computing systems, sequence prediction models must operate under tight constraints. Various models are available that cater to prediction under these conditions that in some way focus on reducing the cost of implementation. These resource constrained sequence prediction models, in practice, exhibit a fundamental tradeoff between the cost of implementation and the quality of its predictions. This fundamental tradeoff seems to be largely unexplored for models for different tasks. Here we formulate the necessary theory and an associated empirical procedure to explore this tradeoff space for a particular family of machine learning models such as deep neural networks. We anticipate that the knowledge of the behavior of this tradeoff may be beneficial in understanding the theoretical and practical limits of creation and deployment of models for resource constrained tasks

    Pretenuring for Java

    Get PDF
    Pretenuring is a technique for reducing copying costs in garbage collectors. When pretenuring, the allocator places long-lived objects into regions that the garbage collector will rarely, if ever, collect. We extend previous work on profiling-driven pretenuring as follows. (1) We develop a collector-neutral approach to obtaining object lifetime profile information. We show that our collection of Java programs exhibits a very high degree of homogeneity of object lifetimes at each allocation site. This result is robust with respect to different inputs, and is similar to previous work on ML, but is in contrast to C programs, which require dynamic call chain context information to extract homogeneous lifetimes. Call-site homogeneity considerably simplifies the implementation of pretenuring and makes it more efficient. (2) Our pretenuring advice is neutral with respect to the collector algorithm, and we use it to improve two quite different garbage collectors: a traditional generational collector and an older-first collector. The system is also novel because it classifies and allocates objects into 3 categories: we allocate immortal objects into a permanent region that the collector will never consider, long-lived objects into a region in which the collector placed survivors of the most recent collection, and shortlived objects into the nursery, i.e., the default region. (3) We evaluate pretenuring on Java programs. Our simulation results show that pretenuring significantly reduces collector copying for generational and older-first collectors. 1

    The Atomic Manifesto: a Story in Four Quarks

    Get PDF
    This report summarizes the viewpoints and insights gathered in the Dagstuhl Seminar on Atomicity in System Design and Execution, which was attended by 32 people from four different scientific communities: database and transaction processing systems, fault tolerance and dependable systems, formal methods for system design and correctness reasoning, and hardware architecture and programming languages. Each community presents its position in interpreting the notion of atomicity and the existing state of the art, and each community identifies scientific challenges that should be addressed in future work. In addition, the report discusses common themes across communities and strategic research problems that require multiple communities to team up for a viable solution. The general theme of how to specify, implement, compose, and reason about extended and relaxed notions of atomicity is viewed as a key piece in coping with the pressing issue of building and maintaining highly dependable systems that comprise many components with complex interaction patterns

    Parents dealing with anorexia : actions and meanings

    Full text link
    This paper examines parents&rsquo; actions in response to anorexia nervosa, and how these are shaped by the ways they construct or understand the eating disorder. The findings indicate that parents try to influence their daughters by searching for help, providing practical support, avoiding confrontation, complying with special requirements, persuading, explaining, and pressuring, using ploys and force, providing emotional support, and mediating interactions. Parents&rsquo; actions are influenced by how they construct anorexia, such as whether they see it as an eating issue, an illness, a psychological problem, a choice, or a mystery. Understanding parents&rsquo; actions and constructions can help clinicians develop collaborative partnerships with parents.<br /

    Reading and Ownership

    Get PDF
    First paragraph: ā€˜It is as easy to make sweeping statements about reading tastes as to indict a nation, and as pointless.ā€™ This jocular remark by a librarian made in the Times in 1952 sums up the dangers and difficulties of writing the history of reading. As a field of study in the humanities it is still in its infancy and encompasses a range of different methodologies and theoretical approaches. Historians of reading are not solely interested in what people read, but also turn their attention to the why, where and how of the reading experience. Reading can be solitary, silent, secret, surreptitious; it can be oral, educative, enforced, or assertive of a collective identity. For what purposes are individuals reading? How do they actually use books and other textual material? What are the physical environments and spaces of reading? What social, educational, technological, commercial, legal, or ideological contexts underpin reading practices? Finding answers to these questions is compounded by the difficulty of locating and interpreting evidence. As Mary Hammond points out, ā€˜most reading acts in history remain unrecorded, unmarked or forgottenā€™. Available sources are wide but inchoate: diaries, letters and autobiographies; personal and oral testimonies; marginalia; and records of societies and reading groups all lend themselves more to the case-study approach than the historical survey. Statistics offer analysable data but have the effect of producing identikits rather than actual human beings. The twenty-first century affords further possibilities, and challenges, with its traces of digital reader activity, but the map is ever-changing
    • ā€¦
    corecore